080 广告系统架构

从本周开始,我们就进入了计算广告这个重要的应用领域。周一我们首先介绍了广告系统的概述,了解了这个领域要解决的主要问题以及发展的简要历史。我们知道了广告系统中有发布商、广告商、受众群这些实体,还有应运而生的各类中间平台。

今天,我们就更加细致地来看一下广告系统的架构,熟悉各个组件都是怎么运作的。

实时广告竞标的重要生态圈

在前一篇分享里,我们提到了“实时竞标”广告系统(简称为RTB)这个概念。现在,我们首先来回顾一下这个系统的重要生态圈。

实时竞标系统的生态圈里有四个重要的“角色”:广告商、发布商、广告交换商和用户。在此基础上,这个生态圈产生了一些重要的新的中间平台。

  • 供应侧平台,简称SSP,负责管理众多发布商的展示机会,接受来自需求侧平台的竞价(简称Bid),同时自动地展示广告。
  • 广告交易平台,简称ADX,是负责多个SSP和需求侧平台进行匹配的中间平台。
  • 需求侧平台,简称DSP,是负责管理众多广告商诸多广告的平台。
  • 数据处理平台,简称DMP,是为SSP、ADX、DSP提供数据服务的中间商。

值得注意的是,以上的这种区别仅仅是一种概念上的区分,目的是为了让从业人员能够更加清晰地理解各个系统的目标和作用。在实际的运作中,不少平台都充当了多个角色,甚至有比较大的互联网广告平台在这几个子系统中都有所涉及。

用户行为定向

了解了实时竞价系统的生态环境之后,我们来看在一次广告显示的流程中,这些生态伙伴都参与了什么样的动作。

第一步,用户来到某个网站,网站产生了一个对实时竞价系统广告网络的请求。

第二步,实时竞价系统广告网络向某个DSP发送请求,这个请求里包含了用户是谁,当前页面是什么,以及一些上下文的数据。

第三步,DSP收到请求以后,就向DMP发送一个数据请求,用于收集用户更多的信息,包括用户的年龄、性别以及喜好。

第四步,DSP收到DMP的信息以后,会向实时竞价系统发出一个自己认为合适的广告以及竞价的价格。

第五步,实时竞价系统广告网络收集到所有的广告竞价以后,会举行一个拍卖(Auction)。每个实时竞价系统的拍卖规则可以不同。

第六步,实时竞价系统会向赢得广告位的DSP发送最后的收款价格,这个价格是根据某种拍卖规则决定的。

第七步,广告显示给了用户。

第八步,用户对广告的反馈,例如是否点击,是否购买广告相应的产品,是否订阅广告对应的服务等,这些信息会返回给DSP。

注意,这里提到的实时竞价系统广告网络既可以是一个SSP,也可以是一个ADX。

我们通过这个流程可以看出,在广告生态系统中,几乎所有的角色,都要在每一个广告请求中参与其中。每一个流程的不精确都有可能让最后现实的广告不符合用户的喜好。

用户追踪

从上面这个广告请求的流程中,我们可以看到,在整个广告生态系统中,对用户的追踪是一种非常重要的能力。如果广告平台的任何一个部件无法对用户信息进行有效的管理,那么,我们就无法显示相关的广告。

广告生态群对用户信息的追踪有一个基本的技术,那就是存储用户的Cookie。实际上,在广告生态圈里,就是用Cookie来对用户的身份进行识别的。当用户第一次访问一个网站的时候,一段Cookie就会被建立并且存储在用户的浏览器里。当用户下一次再访问的时候,这段Cookie就会被重新访问并且可能被更改。

需要注意的是,Cookie是和某一个域名(Domain)相关联的。比如,在通常情况下,你访问了A网站,B网站就无法访问你在A网站的Cookie。这样做的初衷是在互联网上可以做到保护用户的隐私以及有限制的信息共享。但作为广告平台来说,这样做当然是无助于平台对于用户信息的访问。

那么,一种方法就是B网站直接得到A网站的允许,到A网址植入脚本从而来收取用户的Cookie信息。例如,在某个时期内,纽约时报的网站就有多达17个合作方在对用户的数据进行收集。然而,即便是这样,每个单独的数据收集方都只能对用户在互联网上的行为进行局部的数据采集。也就是说,这些收集方很难对用户在互联网上的全部行为进行建模。很明显,这是不利于展示最有价值的广告信息的。

在这样的情况下,也就慢慢催生了一个新的技术——Cookie的整合。简单说来,Cookie整合要做的事情就是把多个由不同的数据收集方收集的Cookie进行匹配,从而能够在逻辑上把这些Cookie都当做同一个人处理。据统计,一个用户在30次点击内,就有99%的概率会被互联网上前10大“数据追踪机构”所追踪,而至少有40%的Cookie可以得到有效的整合。

当然,用Cookie来追踪用户并不是万能的。用户可以删除Cookie信息甚至在浏览器的层面禁止Cookie信息。这就给广告平台提出了不小的挑战。最近几年,基于其他存储技术的用户追踪手段,例如Canvas API或者Flash Cookie等也慢慢流行起来。

总结

今天我为你介绍了广告系统的基本架构。一起来回顾下要点:第一,我们分享了广告系统中各个系统的角色;第二,我们聊了各个子系统在一个广告显示请求中都干了什么事情,从感性上为你建立一个整体的观念;第三,我们简单提及了用户追踪的概念以及现在最常见的用户追踪技术的一些基本思路。

最后,给你留一个思考题,对于一个电子商务网站来说,卖家希望通过在站内显示的广告来扩大收益,这种情况下,谁是DSP、SSP和ADX呢?